﻿using System;

namespace Kaleida.ServiceMonitor.Model.Runtime
{
    public abstract class RequestResult
	{
        private readonly IOperation operation;
        private readonly DateTime sentOn;

        protected RequestResult(IOperation operation, DateTime sentOn)
        {
            this.operation = operation;
            this.sentOn = sentOn;
        }

        public IOperation Operation
        {
            get { return operation; }
        }

        public DateTime SentOn
        {
            get { return sentOn; }
        }

        public abstract string ToListItemText();
        public abstract string ToClipboardItemText();

        public override string ToString()
        {
            return ToListItemText();
        }
	}
}
